using System;
using System.Collections.Generic;
using UMC.Data;
namespace UMC.Wiki.Entities
{
public partial class ProjectMember
{
readonly static Action<ProjectMember,object>[] _SetValues=new Action<ProjectMember,object>[]{(r,t)=>r.Alias=Reflection.ParseObject(t, r.Alias),(r,t)=>r.AuthType=Reflection.ParseObject(t, r.AuthType),(r,t)=>r.CreationTime=Reflection.ParseObject(t, r.CreationTime),(r,t)=>r.ExpireTime=Reflection.ParseObject(t, r.ExpireTime),(r,t)=>r.project_id=Reflection.ParseObject(t, r.project_id),(r,t)=>r.user_id=Reflection.ParseObject(t, r.user_id)};
readonly static string[] _Columns=new string[]{"Alias","AuthType","CreationTime","ExpireTime","project_id","user_id"};
protected override void SetValue(string name, object obv){
var index = Utility.Search(_Columns,name, StringComparer.CurrentCultureIgnoreCase);
if (index > -1)_SetValues[index](this, obv);
}
protected override void GetValues(Action<String, object> action){
AppendValue(action,"Alias", this.Alias);
AppendValue(action,"AuthType", this.AuthType);
AppendValue(action,"CreationTime", this.CreationTime);
AppendValue(action,"ExpireTime", this.ExpireTime);
AppendValue(action,"project_id", this.project_id);
AppendValue(action,"user_id", this.user_id);
}

 protected override RecordColumn[] GetColumns(){
 var cols = new RecordColumn[6];
cols[0]= RecordColumn.Column("Alias",this.Alias);
cols[1]= RecordColumn.Column("AuthType",this.AuthType);
cols[2]= RecordColumn.Column("CreationTime",this.CreationTime);
cols[3]= RecordColumn.Column("ExpireTime",this.ExpireTime);
cols[4]= RecordColumn.Column("project_id",this.project_id);
cols[5]= RecordColumn.Column("user_id",this.user_id);
return cols;
}

}
}

